package unq.ui.services

import java.util.List
import retrofit.Callback
import retrofit.RestAdapter
import retrofit.http.Body
import retrofit.http.GET
import retrofit.http.POST
import retrofit.http.Path
import unq.ui.informacionCaso.Caso
import unq.ui.informacionCaso.Pista
import unq.ui.informacionCaso.StatusOk
import unq.ui.informacionCaso.Villanos

interface CasoService {
	
	
	@GET("/obtenerCaso")
	def void obtenerCaso(Callback<Caso> callback)
	
	@GET("/obtenerVillanos/{id}")
	def void obtenerVillanos(@Path("id") int id, Callback<Villanos> callback)
	
	@GET("/consultar/{id}/{lugar}")
	def void consultarLugar(@Path("id") int id, @Path("lugar") String lugar, Callback<List<Pista>> callback)
	
	@POST("/viajar/{pais}")
	def void viajar(@Path("pais") String pais, @Body int id, Callback<Caso> callback)
	
	@POST("/emitirOrden/{villano}")
	def void emitirOrden(@Path("villano") String villano,@Body int id, Callback<StatusOk> callback ) 
	
}


class CasoServiceFactory {
	
		def buildCasoService(){
			
			
			val API_URL = '''http://192.168.0.7:9000/'''
			
			val restAdapter = new RestAdapter.Builder().setEndpoint(API_URL).build
			
			restAdapter.create(CasoService)
		
		}
	}	
	
